Vector controller for a permanent magnet motor and inverter module

ABSTRACT

In a system in which current is detected in an inexpensive manner or in a system in which a position detector is omitted, the present invention provides a high-efficiency vector controller for a permanent magnet motor that can minimize current at the same torque even when there is setting error (R−R*) in resistance. Even when a current value commanded for the d-axis is set to zero, a virtual inductance value calculated from a detected q-axis current value is used for output voltage value calculation and phase error estimation calculation; so even if there is setting error (R−R*) in resistance, current can be minimized at the same torque and thereby the present invention can provide a high-efficiency vector controller for a permanent magnet motor.

CLAIM OF PRIORITY

The present application claims priority from Japanese application serial no. 2006-178895, filed on Jun. 29, 2006, the content of which is hereby incorporated by reference into this application.

FIELD OF THE INVENTION

The present invention is involved in a maximum torque-current ratio control method applied to a permanent magnet motor, and relates to technology for achieving a high-efficiency control operation.

BACKGROUND OF THE INVENTION

A conventional maximum torque-current ratio control method is described in “Wide Speed Control of Interior Permanent Magnet Synchronous Motor” Journal of The Institute of Electrical Engineers of Japan, Vol. 114-D, No. 6, '94 p. 668, in which a motor constant and a q-axis current value are used to generate a d-axis current value and the reluctance torque of the motor is fully used to minimize current at the same torque. [Non-patent Document 1] “Wide Speed Control of Interior Permanent Magnet Synchronous Motor” Journal of The Institute of Electrical Engineers of Japan, Vol. 114-D, No. 6, '94 p. 668.

SUMMARY OF THE INVENTION

In vector control in which a position sensor is attached to a motor and a detected motor position and a detected frequency are used, current can be minimized at the same torque even when there is setting error ΔR(=R−R*) between a motor resistance R and a setting R* used for control.

In position sensor-less control, however, axis error, which is a deviation between a commanded rotational phase value and the rotational phase value of the permanent magnet motor, is estimated by calculation in which the motor constant and d-axis and q-axis current values are used; if there is setting error (R−R*) in resistance, when non-zero d-axis current is generated, therefore, estimation error is included in estimated axis error. This makes it difficult to minimize current at the same torque.

An object of the present invention is to provide a high-efficiency vector controller for a permanent magnet motor that can minimize current even when there is setting error (R−R*) in resistance.

In the present invention, even when a current value commanded for the d-axis is zero, a virtual inductance value is used to calculate the value of an output voltage produced by a converter and estimated axis error.

According to the present invention, even when a current value commanded for the d-axis is set to zero, a virtual inductance value calculated from a detected q-axis current value is used for output voltage value calculation and phase error estimation calculation; so the present invention provides a high-efficiency vector controller for a permanent magnet motor that can minimize current at the same torque even when there is setting error (R−R*) in resistance.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows the structure of a high-efficiency vector controller for a permanent magnet motor in an embodiment.

FIG. 2 shows the relation between the resistance setting error ratio and motor current.

FIG. 3 shows the relation between the detected q-axis current value Iqc and the calculated virtual inductance value L*.

FIG. 4 shows the structure of a high-efficiency vector controller for a permanent magnet motor in another embodiment.

FIG. 5 shows the structure of a weak-magnetic-field vector controller for a permanent magnet motor in still another embodiment.

FIG. 6 shows the structure of a weak-magnetic-field vector controller for a permanent magnet motor in yet another embodiment.

FIG. 7 shows the structure of a weak-magnetic-field vector controller for a permanent magnet motor in yet another embodiment.

FIG. 8 shows an exemplary structure in a mode of the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Embodiments of the present invention will be described below in detail with reference to the drawings.

First Embodiment

FIG. 1 shows an example of the structure of a high-efficiency vector controller for a permanent magnet motor in an embodiment of the present invention.

Reference numeral 1 indicates a permanent magneto motor; reference numeral 2 indicates an electric power converter for outputting voltages in proportional to commanded voltage values Vu*, Vv*, and Vw* of a three-phase AC current; reference numeral 21 indicates a DC power supply; reference numeral 3 indicates a current detector that can detect three-phase AC currents Iu, Iv, and Iw; reference numeral 4 indicates a coordinate converter for outputting detected d-axis and q-axis current values Idc and Iqc according to detected values Iuc, Ivc, and Iwc of the three-phase AC currents Iu, Iv, and Iw and to a commanded rotation phase value θc* of the electric power converter; reference numeral 5 indicates an axis error estimation calculating part for estimating axis error, which is a deviation between a commanded rotation phase value θc* and a motor rotation phase value θ, by calculation according to commanded d-axis and q-axis voltage values Vdc* and Vqc*, a calculated frequency value ω₁, the detected current values Idc and Iqc, a calculated virtual inductance value L*, and a motor constant and then outputting estimated axis error Δθc; reference numeral 6 indicates a frequency calculating part for outputting the calculated frequency ω₁ so that the estimated axis error Δθc matches a commanded axis error Δθc* (zero); reference numeral 7 indicates a phase calculating part for integrating the calculated frequency ω₁ and outputting a commanded rotation phase value θc* to the coordinate converter 4 and another coordinate converter 12; reference numeral 8 indicates a speed control calculating part for outputting a commanded q-axis current value Iq* so that a command speed ω_(r)* matches the calculated frequency (o; reference numeral 9 indicates a q-axis current command calculating part for outputting a second commanded q-axis current value Iq** according to a deviation between the commanded q-axis current value Iq* and the detected current value Iqc; reference numeral 10 indicates a d-axis current command calculating part for outputting a second commanded d-axis current value Id** according to a deviation between the commanded d-axis current value Id* (zero) and the detected current value Idc; reference numeral 11 indicates a voltage vector calculating part for outputting commanded d-axis and q-axis voltage values Vdc* and Vqc* according to the electric constant of the motor 1, the second commanded current values Id** and Iq**, the calculated frequency o), and the calculated inductance value L*; reference numeral 12 indicates a coordinate converter for outputting commanded voltage values Vu*, Vv*, and Vw* of the three-phase AC currents according to the commanded voltage values Vdc* and Vqc* and to the commanded rotation phase value θc*; reference numeral 13 indicates a virtual inductance calculating part for outputting a calculated inductance value L*, which is used for calculation by the axis error estimation calculating part 5 and voltage vector calculating part 11, according to the detected q-axis current value Iqc.

Described first will be the basic operation in the position sensor-less control method in which the virtual inductance calculating part 13, which is a feature of the present invention, is used.

A motor torque rm is obtained from equation (1). $\begin{matrix} \left\lbrack {{Equation}\quad 1} \right\rbrack & \quad \\ {\tau_{m} = {\frac{3}{2} \cdot {Pm} \cdot \left( {{Ke} - {\left( {{Ld} - {Lq}} \right) \cdot {Id}}} \right) \cdot {Iq}}} & (1) \end{matrix}$

where

Pm: Number of motor pole pairs

Ke: Electric power generation coefficient

Ld: Inductance value on the d-axis

Lq: Inductance value on the q-axis

Id: Motor current on the d-axis

Iq: Motor current on the q-axis

Let a calculation expression for achieving maximum torque-current ratio control be −X. Then, the axis error Δθ (=θc*−θ), which is a deviation between a commanded rotation phase value θc* generated at that time and the rotation phase value θ of the motor is defined as Δθ_(opt) as in equation (2).

[Equation 2] Δθ_(opt)=sin⁻[−X]  (2)

When the axis error Δθ_(opt) occurs, a matrix for coordinate conversion from the detected current values Idc and Iqc on the control axis (dc-qc) to the motor currents Id and Iq on a motor axis (d-q) is represented as in equation (3). $\begin{matrix} \left\lbrack {{Equation}\quad 3} \right\rbrack & \quad \\ {{\begin{bmatrix} {Id} \\ {Iq} \end{bmatrix} = {\begin{bmatrix} {\cos\quad{\Delta\theta}_{opt}} & {{- \sin}\quad\Delta\quad\theta_{opt}} \\ {\sin\quad\Delta\quad\theta_{opt}} & {\cos\quad{\Delta\theta}_{opt}} \end{bmatrix} \cdot \begin{bmatrix} {Idc} \\ {Iqc} \end{bmatrix}}}\quad} & (3) \end{matrix}$

Since the commanded d-axis value Id* is set to zero (Id*=Idc=0), equations (2) and (3) give equation (4). $\begin{matrix} \left\lbrack {{Equation}\quad 4} \right\rbrack & \quad \\ {\begin{bmatrix} {Id} \\ {Iq} \end{bmatrix} = {\begin{bmatrix} X \\ \sqrt{1 - X^{2}} \end{bmatrix} \cdot \lbrack{Iqc}\rbrack}} & (4) \end{matrix}$

When equation (4) is assigned to equation (1), which is a torque equation of the motor, equation (5) is given. $\begin{matrix} \left\lbrack {{Equation}\quad 5} \right\rbrack & \quad \\ {\tau_{m} = {{\frac{3}{2} \cdot {Pm} \cdot {Iqc} \cdot \sqrt{1 - X^{2}}}\left( {{Ke} - {\left( {{Ld} - {Lq}} \right) \cdot {Iqc} \cdot X}} \right)}} & (5) \end{matrix}$

To obtain calculation expression X for achieving maximum torque-current ratio control at the same motor torque, it suffices to solve equation (6). $\begin{matrix} \left\lbrack {{Equation}\quad 6} \right\rbrack & \quad \\ {\frac{\mathbb{d}\tau_{m}}{\mathbb{d}X} = {\frac{3 \cdot {Pm} \cdot {Iqc} \cdot \begin{bmatrix} {{{- {Ke}} \cdot X} + {{Iqc} \cdot \left( {{Ld} - {Lq}} \right) \cdot}} \\ \left( {{2 \cdot X^{2}} - 1} \right) \end{bmatrix}}{2\sqrt{1 - X^{2}}} = 0}} & (6) \end{matrix}$

Equation (6) is solved for X as shown below. $\begin{matrix} \left\lbrack {{Equation}\quad 7} \right\rbrack & \quad \\ {X = \frac{{Ke} - \sqrt{{Ke}^{2} + {8 \cdot \left( {{Ld} - {Lq}} \right)^{2} \cdot {Iqc}^{2}}}}{4 \cdot \left( {{Ld} - {Lq}} \right) \cdot {Iqc}}} & (7) \end{matrix}$

When equation (7) is assigned to equation (2) to obtain the axis error Δθ, equation (8) is obtained. $\begin{matrix} \left\lbrack {{Equation}\quad 8} \right\rbrack & \quad \\ {{\Delta\theta}_{opt} = {\sin^{- 1}\left\lbrack \frac{{Ke} - \sqrt{{Ke}^{2} + {8 \cdot \left( {{Ld} - {Lq}} \right)^{2} \cdot {Iqc}^{2}}}}{4 \cdot \left( {{Ld} - {Lq}} \right) \cdot {Iqc}} \right\rbrack}} & (8) \end{matrix}$

If the axis error Δθ_(opt) as in equation (8) occurs, even when the commanded d-axis current value Id* is set to zero, maximum torque-current ratio control can be achieved.

In a method of generating the axis error Δθ_(opt), the fact that the estimated axis error Δθc, which is an output from the axis error estimation calculating part 5, has sensitivity only in the q-axis inductance value Lq, is used.

In the voltage vector calculating part 11 shown in FIG. 1, the commanded d-axis and q-axis voltage values Vdc* and Vqc*, which are calculated by use of the second commanded d-axis and q-axis current values Id** and Iq**, the calculated frequency value ω₁, the motor constant setting, and the calculated inductance value L*, are calculated from equation (9). $\begin{matrix} \left\lbrack {{Equation}\quad 9} \right\rbrack & \quad \\ {\begin{bmatrix} {Vdc}^{*} \\ {Vqc}^{*} \end{bmatrix} = {{\begin{bmatrix} {{- \omega_{1}} \cdot L^{*}} & R^{*} \\ R^{*} & {\omega_{1} \cdot {Ld}^{*}} \end{bmatrix} \cdot \begin{bmatrix} {Id}^{**} \\ {Iq}^{**} \end{bmatrix}} + \begin{bmatrix} 0 \\ {\omega_{1} \cdot {Ke}^{*}} \end{bmatrix}}} & (9) \end{matrix}$

If there is arbitrary axis error Δθ, the voltages Vd and Vq, which are calculated on the control side and applied to the motor, are given by equation (10). $\begin{matrix} \left\lbrack {{Equation}\quad 10} \right\rbrack & \quad \\ {\left\lbrack \quad\begin{matrix} {Vd} \\ {Vq} \end{matrix} \right\rbrack = {\left\lbrack \quad\begin{matrix} {\cos\quad{\Delta\theta}} & {{- \sin}\quad{\Delta\theta}} \\ {\sin\quad{\Delta\theta}} & {\cos\quad\Delta\quad\theta} \end{matrix} \right\rbrack \cdot \left\lbrack {{\left\lbrack \quad\begin{matrix} {{- \omega_{1}} \cdot L^{*}} & R^{*} \\ R^{*} & {\omega_{1} \cdot {Ld}^{*}} \end{matrix} \right\rbrack \cdot \left\lbrack \quad\begin{matrix} {Id}^{**} \\ {Iq}^{**} \end{matrix} \right\rbrack} + \quad\left\lbrack \quad\begin{matrix} 0 \\ {\omega_{1} \cdot {Ke}^{*}} \end{matrix}\quad \right\rbrack}\quad \right\rbrack}} & (10) \end{matrix}$

The d-axis and q-axis voltages Vd and Vq applied to the motor are represented by use of the axis error Δθ, the detected current values Idc and Idq, and the motor constant, as shown in equation (11). $\begin{matrix} \left\lbrack {{Equation}\quad 11} \right\rbrack & \quad \\ {\begin{bmatrix} {Vd} \\ {Vq} \end{bmatrix} = {{\begin{bmatrix} {{- \omega_{r}} \cdot L_{q}} & R \\ R & {\omega_{r} \cdot {Ld}} \end{bmatrix} \cdot \begin{bmatrix} {\cos\quad{\Delta\theta}} & {{- \sin}\quad{\Delta\theta}} \\ {\sin\quad{\Delta\theta}} & {\cos\quad{\Delta\theta}} \end{bmatrix} \cdot \begin{bmatrix} {Idc} \\ {Iqc} \end{bmatrix}} + \begin{bmatrix} 0 \\ {\quad{\omega_{\quad 1} \cdot {Ke}}} \end{bmatrix}}} & (11) \end{matrix}$

Equation (10) equals equation (11), so if it is considered that the commanded d-axis current value Id* is set to zero and the commanded q-axis current value Iq* is a prescribed value, the output values Id** and Iq** respectively supplied from the commanded d-axis current calculating part 10 and the commanded q-axis current calculating part 9 are represented as in equation (12). $\begin{matrix} \left\lbrack {{Equation}\quad 12} \right\rbrack & \quad \\ {\begin{bmatrix} {{Id}^{**} = \frac{{c_{1} \cdot {Iqc}} + c_{2}}{2 \cdot \left( {R^{*2} + {{Ld}^{*} \cdot L^{*} \cdot \omega_{1}^{2}}} \right)}} \\ {{Iq}^{**} = \frac{{c_{3} \cdot {Iqc}} + c_{4}}{2 \cdot \left( {R^{*2} + {{Ld}^{*} \cdot L^{*}} - \omega_{1}^{2}} \right)}} \end{bmatrix}{where}{c_{1} = {{\omega_{1} \cdot \left\lbrack {{2 \cdot R \cdot L^{*}} - {R^{*} \cdot \left( {{Ld} + {Lq}} \right)}} \right\rbrack} + {\omega_{1} \cdot \left( {{Ld} - {Lq}} \right) \cdot \left\lbrack {{{{- \omega_{1}} \cdot L^{*} \cdot \sin}\quad 2\quad\Delta\quad\theta} + {{R^{*} \cdot \cos}\quad 2\quad\Delta\quad\theta}} \right\rbrack}}}\quad{c_{2} = {2 \cdot \left\lbrack {{{- \omega_{1}^{2}} \cdot L^{*} \cdot {Ke}^{*}} + {\omega_{1} \cdot {Ke} \cdot \left( {{{R^{*} \cdot \sin}\quad{\Delta\theta}} + {{\omega_{1} \cdot L^{*} \cdot \cos}\quad{\Delta\theta}}} \right)}} \right\rbrack}}{c_{3} = {{2 \cdot R \cdot R^{*} \cdot \omega_{1}^{2} \cdot {Ld}^{*} \cdot \left( {{Ld} + {Lq}} \right)} - {\omega_{1} \cdot \left( {{Ld} - {Lq}} \right) \cdot \left\lbrack {{{R^{*} \cdot \sin}\quad 2\Delta\quad\theta} + {{\omega_{1} \cdot {Ld}^{*} \cdot \cos}\quad 2\quad\Delta\quad\theta}} \right\rbrack}}}{c_{4} = {2 \cdot \left\lbrack {{{- \omega_{1}} \cdot R^{*} \cdot {Ke}^{*}} + {\omega_{1} \cdot {Ke} \cdot \left( {{{{- \omega_{1}} \cdot {Ld}^{*} \cdot \sin}\quad\Delta\quad\theta} + {{R^{*} \cdot \cos}\quad{\Delta\theta}}} \right)}} \right\rbrack}}} & (12) \end{matrix}$

The axis error estimation calculating part 5 uses the calculated d-axis and q-axis current values Idc and Iqc, the calculated frequency value ω₁, the motor constant setting, and the calculated inductance value L* to calculate the estimated axis error Δθc according to equation (13). $\begin{matrix} \left\lbrack {{Equation}\quad 13} \right\rbrack & \quad \\ {{\Delta\quad\theta\quad c} = {\tan^{- 1}\left\lbrack \frac{{Vdc}^{*} - {R^{*} \cdot {Idc}} + {\omega_{1} \cdot L^{*} \cdot {Iqc}}}{{Vqc}^{*} - {R^{*} \cdot {Iqc}} - {\omega_{1} \cdot L^{*} \cdot {Idc}}} \right\rbrack}} & (13) \end{matrix}$

When equations (9) and (12) are assigned to equation (13), equation (14) is given. $\begin{matrix} \left\lbrack {{Equation}\quad 14} \right\rbrack & \quad \\ {{{\Delta\theta}\quad c} = {\tan^{- 1}\left\lbrack \frac{\begin{matrix} {{\omega_{1} \cdot \left( \left\lbrack {{2L^{*}} - \left( {{Ld} + {Iq}} \right)} \right\rbrack \right) \cdot {Iqc}} + {\left( {{Id} - {Lq}} \right) \cdot}} \\ \left. {{{Iqc} \cdot {\cos\left\lbrack {2\Delta\quad\theta} \right\rbrack}} + {2{{Ke} \cdot {\sin\lbrack{\Delta\theta}\rbrack}}}} \right) \end{matrix}}{2\begin{bmatrix} {{\left( {R - R^{*}} \right) \cdot {Iqc}} + {\omega_{1} \cdot}} \\ {{\cos\lbrack{\Delta\theta}\rbrack}\left( {{Ke} - {{Iqc} \cdot \left( {{Ld} - {Lq}} \right) \cdot {\sin\lbrack{\Delta\theta}\rbrack}}} \right)} \end{bmatrix}} \right\rbrack}} & (14) \end{matrix}$

The frequency calculating part 6 calculates the frequency ω₁ so that the estimated axis error Δθc output from the axis error estimation calculating part 5 matches zero. When the speed is fixed, the numerator terms of equation (14) result in zero, equation 15 holds. $\begin{matrix} \left\lbrack {{Equation}\quad 15} \right\rbrack & \quad \\ \begin{matrix} {{\left\lbrack {{2L^{*}} - \left( {{Ld} + {Lq}} \right)} \right\rbrack \cdot {Iqc}} +} \\ {{\left( {{Ld} - {Lq}} \right) \cdot {Iqc} \cdot {\cos\left\lbrack {2\Delta\quad\theta} \right\rbrack}} +} \\ {{2{{Ke} \cdot {\sin\lbrack{\Delta\theta}\rbrack}}} = {{\left\lbrack {{2L^{*}} - \left( {{Ld} + {Lq}} \right)} \right\rbrack \cdot {Iqc}} +}} \\ {{\left( {{Ld} - {Lq}} \right) \cdot {Iqc} \cdot {\cos\left\lbrack {2\Delta\quad\theta} \right\rbrack}} +} \\ {2{{Ke} \cdot {\sin\lbrack{\Delta\theta}\rbrack}}} \\ {= {{\left\lbrack {{2L^{*}} - \left( {{Ld} + {Lq}} \right)} \right\rbrack \cdot {Iqc}} +}} \\ {{\left( {{Ld} - {Lq}} \right) \cdot {{Iqc}\left( {1 - {2{\sin^{2}\lbrack{\Delta\theta}\rbrack}}} \right)}} +} \\ {2{{Ke} \cdot {\sin\lbrack{\Delta\theta}\rbrack}}} \\ {= 0} \end{matrix} & (15) \end{matrix}$

When the axis error Δθ is obtained from equation (15), equation (16) is then obtained. $\begin{matrix} \left\lbrack {{Equation}\quad 16} \right\rbrack & \quad \\ {{\Delta\theta} = {\sin^{- 1}\left\lbrack \frac{{Ke} - \sqrt{{Ke}^{2} + {4 \cdot \left( {{Ld} - {Lq}} \right) \cdot \left( {L^{*} - {Lq}} \right) \cdot {Iqc}^{2}}}}{2 \cdot \left( {{Ld} - {Lq}} \right) \cdot {Iqc}} \right\rbrack}} & (16) \end{matrix}$

To perform the maximum torque-current ratio control, the calculated inductance value L* may be set so that the axis error Δθ matches the axis error Δθ_(opt) in equation (8) described above.

That is, if equation (17) is satisfied, the current can be minimized at the same torque. $\begin{matrix} \left\lbrack {{Equation}\quad 17} \right\rbrack & \quad \\ {\frac{{Ke} - \sqrt{{Ke}^{2} + {8 \cdot \left( {{Ld} - {Lq}} \right)^{2} \cdot {Iqc}^{2}}}}{4 \cdot \left( {{Ld} - {Lq}} \right) \cdot {Iqc}} = {{\left( {{Ke} - \left. \sqrt{}{Ke}^{2} \right. + {4 \cdot \left( {{Ld} - {Lq}} \right) \cdot \left( {L^{*} - {Lq}} \right) \cdot {Iqc}^{2}}} \right)/2} \cdot \left( {{Ld} - {Lq}} \right) \cdot {Iqc}}} & (17) \end{matrix}$

When equation (17) is solved for the calculated virtual inductance value L*, equation (18) is yielded. $\begin{matrix} \left\lbrack {{Equation}\quad 18} \right\rbrack & \quad \\ {L^{*} = {\frac{{Ke} \cdot \left( {{- {Ke}} + \sqrt{\left. {{Ke}^{2} + {8 \cdot \left( {{Ld} - {Lq}} \right)^{2} \cdot {Iqc}^{2}}} \right)}} \right.}{8 \cdot \left( {{Ld} - {Lq}} \right) \cdot {Iqc}^{2}} + {\frac{1}{2}\left( {{Ld} + {Lq}} \right)}}} & (18) \end{matrix}$

That is, the virtual inductance calculating part 13 may output the calculated inductance value L* as shown in equation (19). $\begin{matrix} \left\lbrack {{Equation}\quad 19} \right\rbrack & \quad \\ {L^{*} = {\frac{{Ke}^{*} \cdot \left( {{- {Ke}^{*}} + \sqrt{{Ke}^{*\quad 2} + {8 \cdot \left( {{Ld}^{*} - {Lq}^{*}} \right)^{2} \cdot {Iqc}^{2}}}} \right)}{8 \cdot \left( {{Ld}^{*} - {Lq}^{*}} \right) \cdot {Iqc}^{2}} + {\frac{1}{\quad 2}\left( {{Ld}^{*} + {Lq}^{*}} \right)}}} & (19) \end{matrix}$

Next, an effect provided by the virtual inductance calculating part 13, which is a feature of the present invention, will be described.

In the controller in FIG. 1, a load torque was applied to the motor 1, and a resistance setting R* to be set in the voltage vector calculating part 11 and the axis error estimation calculating part 5 was taken as a parameter. A motor current I₁ generated was then observed.

FIG. 2 shows the relation between the resistance setting error ratio (R*/R) and the motor current value, which includes an effect provided by the present invention.

Characteristics of individual methods are shown in the drawing.

Method 1: The maximum torque-current ratio control is not performed (Id*=0, L*=Lq*).

Method 2: Characteristics in the method described in said Non-patent Document 1 (the motor constant and q-axis current value are used to calculate the d-axis current value).

Method 3: Characteristics when the virtual inductance calculating part 13 is used.

In method 1, the commanded d-axis current value Id* is set to zero, so there is no effect by the resistance setting error ratio (R*/R), causing the motor current to be held at a fixed value. However, the current value is large.

In method 2, the current can be minimized when the resistance setting error ratio (R*/R) is 1. However, as the resistance setting error ratio (R*/R) deflects from 1, the current value becomes larger.

In method 3, the use of the virtual inductance calculating part 13 enables the current to be minimized even when the resistance setting error ratio is not 1.

In this embodiment, the virtual inductance calculating part 13 sequentially gives the calculated inductance value L* according to equation (19), but a similar effect can also be obtained by referencing the relation between the calculated q-axis current detection value and the virtual inductance value L* as indicated by the table in FIG. 3.

Second Embodiment

FIG. 4 shows another embodiment of the present invention.

In the first embodiment, the detected q-axis current value Iqc is used to give the calculated virtual inductance value L*. However, a high-efficiency vector controller for a permanent magnet motor in this embodiment uses a virtual inductance setting L** to perform voltage vector calculation and calculation for estimating axis error. An exemplary structure of this type of vector controller will be described below.

Reference numerals 1 to 4, 6 to 10, 12, and 21 in the drawing indicate elements identical to the corresponding elements in FIG. 1.

Reference characters 5 a indicate an axis error estimation calculating part for estimating, by calculation, axis error, which is a deviation between the commanded rotation phase value θc* and the motor rotation phase value θ, from the commanded voltage values Vdc* and Vqc*, the calculated frequency value (i, the detected current values Idc and Iqc, the virtual inductance setting L**, and the motor constant as in equation (20) and then outputting estimated axis error Δθc. $\begin{matrix} \left\lbrack {{Equation}\quad 20} \right\rbrack & \quad \\ {{{\Delta\theta}\quad c} = {\tan^{- 1}\left\lbrack \frac{{Vdc}^{*} - {R^{*} \cdot {Idc}} - {\omega_{1} \cdot L^{**} \cdot {Iqc}}}{{Vqc}^{*} - {R^{*} \cdot {Iqc}} - {\omega_{1} \cdot L^{**} \cdot {Idc}}} \right\rbrack}} & (20) \end{matrix}$

Reference characters 11 a indicate a voltage vector calculating part for outputting the commanded d-axis and q-axis voltage values Vdc* and Vqc* according to the electric constant of the motor 1, the second commanded current values Id** and Iq**, the calculated frequency ω₁, and the inductance setting L** as in equation (21). $\begin{matrix} \left\lbrack {{Equation}\quad 21} \right\rbrack & \quad \\ {\begin{bmatrix} {Vdc}^{*} \\ {Vqc}^{*} \end{bmatrix} = {{\begin{bmatrix} {{- \omega_{1}} \cdot L^{**}} & R^{*} \\ R^{*} & {\omega_{1} \cdot {Ld}^{*}} \end{bmatrix} \cdot \begin{bmatrix} {Id}^{**} \\ {Iq}^{**} \end{bmatrix}} + \begin{bmatrix} 0 \\ {\omega_{1} \cdot {Ke}^{*}} \end{bmatrix}}} & (21) \end{matrix}$

Reference characters 13 a indicate a virtual inductance setting part for outputting the virtual inductance setting L**.

A range in which the calculated inductance value L* in equation (18) is set will be considered below.

Suppose that the d-axis inductance value Ld is assigned to L*. $\begin{matrix} \left\lbrack {{Equation}\quad 22} \right\rbrack & \quad \\ {{Ld} = {\frac{{Ke} \cdot \left( {{- {Ke}} + \sqrt{\left. {{Ke}^{2} + {8 \cdot \left( {{Ld} - {Lq}} \right)^{2} \cdot {Iqc}^{2}}} \right)}} \right.}{8 \cdot \left( {{Ld} - {Lq}} \right) \cdot {Iqc}^{2}} + {\frac{1}{2}\left( {{Ld} + {Lq}} \right)}}} & (22) \end{matrix}$

Equation (23) is yielded from equation (22). $\begin{matrix} \left\lbrack {{Equation}\quad 23} \right\rbrack & \quad \\ {{{\frac{1}{2} \cdot \left( {{Ld} - {Lq}} \right) \cdot 8 \cdot \left( {{Ld} - {Lq}} \right) \cdot {Iqc}^{2}} + {Ke}^{2}} = \left( {{ke} \cdot \sqrt{{Ke}^{2} + {8 \cdot \left( {{Ld} - {Lq}} \right)^{2} \cdot {Iqc}^{2}}}} \right)} & (23) \end{matrix}$

When both sides are squared, equation (24) is given.

[Equation 24] 16·(Ld−Lq)⁴ |qc ⁴=0   (24)

That is, equation (24) holds when there is almost no load (Iqc≅0), and L* converges to the d-axis inductance value Ld.

When the detected q-axis current value Iqc is infinite, equation (25) holds. $\begin{matrix} \left\lbrack {{Equation}\quad 25} \right\rbrack & \quad \\ {L^{**} \approx {\frac{1}{2}\left( {{Ld} + {Lq}} \right)}} & (25) \end{matrix}$

When the q-axis inductance value Lq is larger than the d-axis inductance value Ld, the setting range of the virtual inductance value L** is obtained from equation (26). $\begin{matrix} \left\lbrack {{Equation}\quad 26} \right\rbrack & \quad \\ {{Ld} \leq L^{**} < {\frac{1}{2}\left( {{Ld} - {Lq}} \right)}} & (26) \end{matrix}$

That is, when the load toque applied to the motor is fixed, the virtual inductance setting L** may be set in the virtual inductance setting part 13 a within the range indicated by equation 27, so that the motor current is minimized. $\begin{matrix} \left\lbrack {{Equation}\quad 27} \right\rbrack & \quad \\ {{Ld}^{*} \leq L^{**} < {\frac{1}{2}\left( {{Ld}^{*} - {Lq}^{*}} \right)}} & (27) \end{matrix}$

When the q-axis inductance value Lq is smaller than the d-axis inductance value Ld, the virtual inductance setting L** may be set within the range indicated by equation 28, so that the motor current is minimized. $\begin{matrix} \left\lbrack {{Equation}\quad 28} \right\rbrack & \quad \\ {{\frac{1}{2}\left( {{Ld}^{*} - {Lq}^{*}} \right)} \leq L^{**} < {Ld}^{*}} & (28) \end{matrix}$

Unless the load torque is equivalent to an extreme heavy load, even when the virtual inductance setting L** is set to an equivalent to the d-axis inductance value Ld, a preferable result is obtained.

In this embodiment as well, torque-current ratio characteristics, which are almost the same as when the virtual inductance calculating part 13 is provided, can be obtained.

Third Embodiment

FIG. 5 shows yet another embodiment of the present invention.

In an exemplary structure in this embodiment, high-efficiency control is applied to a vector controller including d-axis and q-axis current control calculating parts.

Reference numerals 1 to 8, 12, 13, and 21 in the drawing indicate elements identical to the corresponding elements in FIG. 1.

Reference characters 9 a indicate a q-axis current control calculating part for outputting a voltage value ΔVq so that the detected q-axis current value Iqc matches the commanded q-axis current value Iq*. Reference characters 10 a indicate a d-axis current control calculating part for outputting a voltage value ΔVd so that the detected d-axis current value Idc matches the commanded d-axis current value Id*. Reference characters 11 b is voltage vector calculating part which calculates the first commanded voltage values Vdc* and Vqc* by using the commanded d-axis and q-axis current values Id* and Iq*, the d-axis and q-axis current control output values ΔVd and ΔVq, the calculated frequency ω₁, the electric constant of the motor 1, and the calculated virtual inductance value L* as in equation (29). $\begin{matrix} \left\lbrack {{Equation}\quad 29} \right\rbrack & \quad \\ {\begin{bmatrix} {Vdc}^{*} \\ {Vqc}^{*} \end{bmatrix} = {{\begin{bmatrix} {{- \omega_{1}}*L^{*}} & R^{*} \\ R^{*} & {\omega_{1} \cdot {Ld}^{*}} \end{bmatrix} \cdot \begin{bmatrix} {Id}^{*} \\ {Iq}^{*} \end{bmatrix}} + \begin{bmatrix} 0 \\ {\omega_{1} \cdot {Ke}^{*}} \end{bmatrix} + \begin{bmatrix} {\Delta\quad{Vd}} \\ {\Delta\quad{Vd}} \end{bmatrix}}} & (29) \end{matrix}$

This type of vector control method can also provide the same effect as in the first embodiment. In this embodiment, the calculated virtual inductance value L* was obtained from the detected q-axis current value Iqc and motor constant and then used for voltage vector calculation and axis error estimation calculation. However, even when the virtual inductance setting L** is set to an equivalent to the d-axis inductance value Ld, a superior result is obtained.

In this embodiment as well, torque-current ratio characteristics, which are the same as when the virtual inductance setting part 13 a is provided, can be obtained.

Fourth Embodiment

In the methods in the first to third embodiments, the current detector 3, which is expensive, is used to detect the three-phase AC currents Iu, Iv, and Iw. However, a controller in which the currents are detected in an inexpensive manner is also applicable.

FIG. 6 shows a fourth embodiment for implementing this type of controller.

Reference numerals 1, 2, 4 to 13, and 21 in the drawing indicate elements identical to the corresponding elements in FIG. 1. Reference numeral 14 indicates a current estimating part for estimating the three-phase AC currents Iu, Iv, and Iw, which pass through the motor 1, from a DC current IDC that passes in the input bus of the electric power converter.

These estimated current values Iuˆ, Ivˆ, and Iwˆ are used by the coordinate converter 4 to calculate the detected d-axis and q-axis current values Idc and Iqc.

In this type of current sensor-less control method as well, Id* matches Idc and Iq* matches Iqc, so operations are performed in the same way as in the embodiments described above. Accordingly, it is apparent that the same effect is obtained.

In this embodiment, the calculated virtual inductance value L* was obtained from the detected q-axis current value Iqc and motor constant and then used for voltage vector calculation and axis error estimation calculation. However, even when the virtual inductance setting L** is set to an equivalent to the d-axis inductance value Ld, a superior result is obtained.

In this embodiment as well, torque-current ratio characteristics, which are the same as when the virtual inductance setting part 13 a is provided, can be obtained.

Fifth Embodiment

FIG. 7 shows still another embodiment of the present invention.

In the first embodiment, the calculated virtual inductance value L* was obtained and then used for voltage vector calculation and axis error estimation calculation. However, a high-efficiency vector controller for a permanent magnet motor in this embodiment calculates the commanded axis error Δθc*. An exemplary structure of this type of vector controller will be described below.

Reference numerals 1 to 4, 6 to 10, 12, and 21 in the drawing indicate elements identical to the corresponding elements in FIG. 1.

Reference characters 5 b indicate an axis error estimation calculating part for estimating, by calculation, axis error Δθ, which is a deviation between the commanded rotation phase value θc* and the motor rotation phase value θ, from the commanded voltage values Vdc* and Vqc*, the calculated frequency value ω₁, the detected current values Idc and Iqc, and the motor constant as in equation (30) and then outputting estimated axis error Δθc. $\begin{matrix} \left\lbrack {{Equation}\quad 30} \right\rbrack & \quad \\ {{\Delta\quad\theta\quad c} = {\tan^{- 1}\left\lbrack \frac{{Vdc}^{*} - {R^{*} \cdot {Idc}} + {\omega_{1} \cdot {Lq}^{*} \cdot {Iqc}}}{{Vqc}^{*} - {R^{*} \cdot {Iqc}} - {{\omega_{1} \cdot {Lq}^{*} \cdot I}\quad d\quad c}} \right\rbrack}} & (30) \end{matrix}$

Reference characters 11 c indicate a voltage vector calculating part for outputting the commanded d-axis and q-axis voltage values Vdc* and Vqc* according to the electric constant of the motor 1, the second commanded current values Id** and Iq**, and the calculated frequency ω₁ as in equation (31). $\begin{matrix} \left\lbrack {{Equation}\quad 31} \right\rbrack & \quad \\ {\begin{bmatrix} {Vdc}^{*} \\ {Vqc}^{*} \end{bmatrix} = {{\begin{bmatrix} {{- \omega_{1}} \cdot L_{q}^{*}} & R^{*} \\ R^{*} & {\omega_{1} \cdot {Ld}^{*}} \end{bmatrix} \cdot \begin{bmatrix} {Id}^{**} \\ {Iq}^{**} \end{bmatrix}} + \begin{bmatrix} 0 \\ {\omega_{1} \cdot {Ke}^{*}} \end{bmatrix}}} & (31) \end{matrix}$

Reference numeral 15 indicates an axis error command calculating part for outputting the commanded axis error Δθc*, which is obtained from equation (32) by using the detected q-axis current value Iqc in the axis error Δθ_(opt) in equation (8). $\begin{matrix} \left\lbrack {{Equation}\quad 32} \right\rbrack & \quad \\ {{{\Delta\theta}\quad c^{*}} = {\sin^{- 1}\left\lbrack \frac{{Ke}^{*} - \sqrt{{Ke}^{*\quad 2} + {8 \cdot \left( {{Ld}^{*} - {Lq}^{*}} \right)^{2} \cdot {Iqc}^{2}}}}{4 \cdot \left( {{Ld}^{*} - {Lq}^{*}} \right) \cdot {Iqc}} \right\rbrack}} & (32) \end{matrix}$

In this embodiment as well, torque-current ratio characteristics, which are the same as when the virtual inductance setting part 13 a is provided, can be obtained.

Sixth Embodiment

An example in which the present invention is applied to a module will be described with reference to FIG. 8.

This embodiment indicates a mode in the first embodiment.

The coordinate converter 4, axis error estimation calculating part 5, frequency calculating part 6, phase calculating part 7, speed control calculating part 8, q-axis current command calculating part 9, d-axis current command calculating part 10, voltage vector calculating part 11, coordinate converter 12, and virtual inductance calculating part 13 are implemented on a single-chip microprocessor.

The single-chip microprocessor and the electric power converter are each included in a single module mounted on the same board. The term module used in this document means a standardized constitution unit. A module includes separable hardware or software parts. Although modules are preferably mounted on the same board from the viewpoint of manufacturing, the mounting of them is not limited to the same board.

Accordingly, modules may be mounted on a plurality of circuit boards included in a single case.

Similar structures can also be implemented in the other embodiments. 

1. A vector controller for a permanent magnet motor that controls output voltage values of an electric power converter for driving a permanent magnet motor according to commanded current values and detected current values on a d-axis and a q-axis, a calculated frequency, and a motor constant setting, and, to have axis error, which is a deviation between a commanded rotation phase value obtained by integrating the calculated frequency and the rotation phase value of the permanent magnet motor, match commanded axis error, controls the calculated frequency, wherein commanded output voltage values of the electric power converter and estimated axis error are calculated by using a virtual inductance value, with the commanded d-axis current value and the commanded axis error being set to approximately zero.
 2. The vector controller according to claim 1, wherein the virtual inductance value is such that the current value of the permanent motor is lessened at the same torque.
 3. The vector controller according to claim 1, wherein the virtual inductance value is calculated from the motor constant and the detected or commanded q-axis current value, or a value referenced from a table is set as the virtual inductance value.
 4. The vector controller according to claim 1, wherein when the q-axis inductance of the motor is larger than the d-axis inductance value, the virtual inductance value is set to a value that is larger than the d-axis inductance value but smaller than half the sum of the d-axis inductance value and the q-axis inductance value; when the q-axis inductance of the motor is smaller than the d-axis inductance value, the virtual inductance value is set to a value that is larger than the sum of the d-axis inductance value and the q-axis inductance value but smaller than the d-axis inductance value.
 5. The vector controller according to claim 1, wherein the virtual inductance value is the d-axis inductance value.
 6. The vector controller according to claim 1, wherein the commanded output voltage values of the electric power converter are calculated according to second commanded current values, which are calculated from first commanded d-axis and q-axis current values and first detected d-axis and q-axis current values, as well as the motor constant, the calculated frequency, and the virtual inductance value.
 7. The vector controller according to claim 1, wherein the commanded output voltage values of the electric power converter are calculated according to current control output values, which are calculated from first commanded d-axis and q-axis current values and first detected d-axis and q-axis current values, as well as output values obtained from voltage vector calculation based on commanded current values, the motor constant, the calculated frequency, and a calculated virtual inductance.
 8. The vector controller according to claim 1, wherein the detected current values are the values of motor currents reproduced according to current values detected on an input DC bus of the electric power converter.
 9. The vector controller according to claim 1, wherein the axis error is calculated from the commanded d-axis and q-axis voltage values, the detected motor current values or values calculated by estimation based on the reproduced currents, the motor constant, and the virtual inductance value.
 10. An inverter module, comprising the controller for a permanent magnet motor according to claim 1 and an electric power converter for converting DC current to AC current.
 11. A vector controller for a permanent magnet motor that controls output voltage values of an electric power converter for driving a permanent magnet motor according to the electric power converter, commanded current values and detected current values on a d-axis and a q-axis, a calculated frequency, and a motor constant setting, and, to have axis error, which is a deviation between a commanded rotation phase value obtained by integrating the calculated frequency and the rotation phase value of the permanent magnet motor, match commanded axis error, controls the calculated frequency, wherein the commanded axis error is calculated so that the current values of the permanent magnet motor are minimized at the same torque, with the commanded d-axis current value being set to approximately zero.
 12. The vector controller according to claim 11, wherein the commanded axis error is calculated from the motor constant and the detected or commanded q-axis current value or a value referenced from a table is set as the commanded axis error.
 13. The vector controller according to claim 11, wherein the output voltage values of the electric power converter are calculated according to second commanded current values, which are calculated from first commanded d-axis and q-axis current values and first detected d-axis and q-axis current values, as well as the motor constant, the calculated frequency, and a calculated virtual inductance value or virtual inductance setting.
 14. The vector controller according to claim 11, wherein commanded output voltage values of the electric power converter are calculated according to current control output values, which are calculated from first commanded d-axis and q-axis current values and first detected d-axis and q-axis current values, and output values resulting from voltage vector calculation based on the commanded current values, the motor constant, and the calculated frequency.
 15. The vector controller according to claim 11, wherein the detected current values are the values of motor currents reproduced according to current values detected on an input DC bus of the electric power converter.
 16. The vector controller according to claim 11, wherein the axis error is calculated from the commanded d-axis and q-axis voltage values, the detected motor current values or values calculated by estimation based on the reproduced currents, and the motor constant.
 17. An inverter module, comprising the controller for a permanent magnet motor according to claim 11 and an electric power converter for converting DC current to AC current. 